To identify certain objects, such as electronic components, many industries, such as the automotive and electronics industries, often use indicia, such as bar codes or data matrix codes, etched onto the surface of the object. Typically, these indicia represent data used to identify the objects and, particularly in the case of electronic components, to accurately position the components during assembly. Generally, the indicia, or targets, are read by an optical scanner, positioned over the object.
Identification of objects is rapidly becoming a critical issue in the manufacture and sale of miniature components, particularly in the electronics industry. Identification is used to track faulty components during automated manufacturing processes. For example, it is costly to apply subsequent steps of the manufacturing process on a component that has been identified as faulty at an earlier step. By reading the identity of the component before each step is applied, an automated manufacturing process can determine whether the component is faulty and, consequently, whether to apply the current step. Thus, if a component is identified as faulty during one step of the manufacturing process, it can be ignored at all subsequent steps.
Similarly, object identification is also desirable in order to trace components once they have been shipped into the field. If a problem develops with a component in the field, the identification on the component provides a key to accessing historical information retained on the component at the factory. This historical information is invaluable in troubleshooting problems in the field.
One object identification technique that has been used with great success is the etching of bar codes onto the objects' surfaces. However, as components become smaller, it is necessary to fit more data into less surface area. In response, the etching of data matrix codes onto the objects' surfaces has begun to emerge as a preferred identification technique. Due to the large amount of data stored in such a small area, it is important that the image provided to the camera be as accurate as possible. To produce an accurate image, it is important to ensure that the target is aligned properly in the scanner's field of view.
A typical prior art optical scanner comprises a light source, a lens, an image sensor, an analog-to-digital (A/D) convertor, and a microprocessor. Such a scanner may also comprise either a serial output interface, or a video image monitor (VIM) interface, or both.
The serial output interface is connected to a video display terminal. The VIM interface comprises a memory buffer and is electrically connected to a VIM. In operation, the scanner is located above a moving surface, such as a conveyor belt. Objects, such as electronic components, are located on the moving surface. A target, such as a data matrix code symbol, or other indicia typically used for identification, is located on the surface of each object.
It is the purpose of an optical scanner to locate the target and process an image thereof to extract the data contained in the target's image. Incident light from the light source is reflected off of the target. The reflected light is directed toward the lens, which focuses the reflected light and directs the focused light toward the image sensor. The image sensor comprises an array of pixels, each of which receives a portion of focused light. The image sensor may be, for example, a charge coupled device (CCD). The image sensor outputs to the A/D convertor 140 an analog signal representing the intensity of the light received by each pixel. The A/D convertor digitizes the analog signal and forwards the digital signal to the microprocessor. The microprocessor processes the digital signal and, among other things, locates the target within the scanner's field of view. The field of view is defined to be the area that can be imaged onto the image sensor by the lens.
As the moving surface moves past the scanner, objects move past the scanner as well. Typically, the location of the objects on the moving surface is well known. Similarly, the location of the target on an object is substantially the same for each object. In operation, it is desirable that the targets be aligned within the field of view as the objects move past the scanner. Thus, once the scanner is situated such that a first target is aligned within the field of view, the scanner can remain fixed and continue to scan subsequent targets accurately. Throughout the process of aligning the targets properly within the field of view, the scanner is in an alignment mode.
While the scanner is in alignment mode, data representing the location of the target within the field of view may be transmitted from the microprocessor via the serial output interface to a video display terminal. Thus, a user familiar with reading such data can adjust the scanner until the target is aligned properly within the field of view. Typically, it is desirable that the center of the target be aligned in the center of the field of view, although, particularly if the target is irregular in shape, the user may align any point on the target on any point within the field of view.
Similarly, data representing the field of view is stored within a memory buffer and may be transmitted from the microprocessor via the VIM interface to a video image monitor. In that case, the video image monitor displays a video image of the field of view. Thus, a user can then view the VIM to determine the location of the target within the field of view and adjust the scanner 100 until the target is aligned properly within the field of view.
This approach has several known disadvantages. This approach requires additional circuitry in the scanner to interface with and control the display terminals. This approach requires an additional memory buffer within the scanner to store the video data before it is forwarded to the display terminal. This approach requires enough table space to accommodate the video terminal. This approach requires the user to look at the target and the display terminal. Thus, not only does this approach requires costly hardware (e.g., the display terminals and connections from the scanner thereto) and buffer memory, it also requires significant table space and is cumbersome to use.
Thus, there is a need in the art for a method and apparatus that reduce the hardware costs, memory, and complexity associated with aligning a target within an optical scanner's field of view.